<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="identitytoolkit_v3.html">Google Identity Toolkit API</a> . <a href="identitytoolkit_v3.relyingparty.html">relyingparty</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#createAuthUri">createAuthUri(body=None)</a></code></p>
<p class="firstline">Creates the URI used by the IdP to authenticate the user.</p>
<p class="toc_element">
  <code><a href="#deleteAccount">deleteAccount(body=None)</a></code></p>
<p class="firstline">Delete user account.</p>
<p class="toc_element">
  <code><a href="#downloadAccount">downloadAccount(body=None)</a></code></p>
<p class="firstline">Batch download user accounts.</p>
<p class="toc_element">
  <code><a href="#downloadAccount_next">downloadAccount_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#emailLinkSignin">emailLinkSignin(body=None)</a></code></p>
<p class="firstline">Reset password for a user.</p>
<p class="toc_element">
  <code><a href="#getAccountInfo">getAccountInfo(body=None)</a></code></p>
<p class="firstline">Returns the account info.</p>
<p class="toc_element">
  <code><a href="#getOobConfirmationCode">getOobConfirmationCode(body=None)</a></code></p>
<p class="firstline">Get a code for user action confirmation.</p>
<p class="toc_element">
  <code><a href="#getProjectConfig">getProjectConfig(delegatedProjectNumber=None, projectNumber=None)</a></code></p>
<p class="firstline">Get project configuration.</p>
<p class="toc_element">
  <code><a href="#getPublicKeys">getPublicKeys()</a></code></p>
<p class="firstline">Get token signing public key.</p>
<p class="toc_element">
  <code><a href="#getRecaptchaParam">getRecaptchaParam()</a></code></p>
<p class="firstline">Get recaptcha secure param.</p>
<p class="toc_element">
  <code><a href="#resetPassword">resetPassword(body=None)</a></code></p>
<p class="firstline">Reset password for a user.</p>
<p class="toc_element">
  <code><a href="#sendVerificationCode">sendVerificationCode(body=None)</a></code></p>
<p class="firstline">Send SMS verification code.</p>
<p class="toc_element">
  <code><a href="#setAccountInfo">setAccountInfo(body=None)</a></code></p>
<p class="firstline">Set account info for a user.</p>
<p class="toc_element">
  <code><a href="#setProjectConfig">setProjectConfig(body=None)</a></code></p>
<p class="firstline">Set project configuration.</p>
<p class="toc_element">
  <code><a href="#signOutUser">signOutUser(body=None)</a></code></p>
<p class="firstline">Sign out user.</p>
<p class="toc_element">
  <code><a href="#signupNewUser">signupNewUser(body=None)</a></code></p>
<p class="firstline">Signup new user.</p>
<p class="toc_element">
  <code><a href="#uploadAccount">uploadAccount(body=None)</a></code></p>
<p class="firstline">Batch upload existing user accounts.</p>
<p class="toc_element">
  <code><a href="#verifyAssertion">verifyAssertion(body=None)</a></code></p>
<p class="firstline">Verifies the assertion returned by the IdP.</p>
<p class="toc_element">
  <code><a href="#verifyCustomToken">verifyCustomToken(body=None)</a></code></p>
<p class="firstline">Verifies the developer asserted ID token.</p>
<p class="toc_element">
  <code><a href="#verifyPassword">verifyPassword(body=None)</a></code></p>
<p class="firstline">Verifies the user entered password.</p>
<p class="toc_element">
  <code><a href="#verifyPhoneNumber">verifyPhoneNumber(body=None)</a></code></p>
<p class="firstline">Verifies ownership of a phone number and creates/updates the user account accordingly.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="createAuthUri">createAuthUri(body=None)</code>
  <pre>Creates the URI used by the IdP to authenticate the user.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to get the IDP authentication URL.
  &quot;appId&quot;: &quot;A String&quot;, # The app ID of the mobile app, base64(CERT_SHA1):PACKAGE_NAME for Android, BUNDLE_ID for iOS.
  &quot;authFlowType&quot;: &quot;A String&quot;, # Explicitly specify the auth flow type. Currently only support &quot;CODE_FLOW&quot; type. The field is only used for Google provider.
  &quot;clientId&quot;: &quot;A String&quot;, # The relying party OAuth client ID.
  &quot;context&quot;: &quot;A String&quot;, # The opaque value used by the client to maintain context info between the authentication request and the IDP callback.
  &quot;continueUri&quot;: &quot;A String&quot;, # The URI to which the IDP redirects the user after the federated login flow.
  &quot;customParameter&quot;: { # The query parameter that client can customize by themselves in auth url. The following parameters are reserved for server so that they cannot be customized by clients: client_id, response_type, scope, redirect_uri, state, oauth_token.
    &quot;a_key&quot;: &quot;A String&quot;, # The customized query parameter.
  },
  &quot;hostedDomain&quot;: &quot;A String&quot;, # The hosted domain to restrict sign-in to accounts at that domain for Google Apps hosted accounts.
  &quot;identifier&quot;: &quot;A String&quot;, # The email or federated ID of the user.
  &quot;oauthConsumerKey&quot;: &quot;A String&quot;, # The developer&#x27;s consumer key for OpenId OAuth Extension
  &quot;oauthScope&quot;: &quot;A String&quot;, # Additional oauth scopes, beyond the basid user profile, that the user would be prompted to grant
  &quot;openidRealm&quot;: &quot;A String&quot;, # Optional realm for OpenID protocol. The sub string &quot;scheme://domain:port&quot; of the param &quot;continueUri&quot; is used if this is not set.
  &quot;otaApp&quot;: &quot;A String&quot;, # The native app package for OTA installation.
  &quot;providerId&quot;: &quot;A String&quot;, # The IdP ID. For white listed IdPs it&#x27;s a short domain name e.g. google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it&#x27;s the OP identifier.
  &quot;sessionId&quot;: &quot;A String&quot;, # The session_id passed by client.
  &quot;tenantId&quot;: &quot;A String&quot;, # For multi-tenant use cases, in order to construct sign-in URL with the correct IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs from.
  &quot;tenantProjectNumber&quot;: &quot;A String&quot;, # Tenant project number to be used for idp discovery.
}


Returns:
  An object of the form:

    { # Response of creating the IDP authentication URL.
  &quot;allProviders&quot;: [ # all providers the user has once used to do federated login
    &quot;A String&quot;,
  ],
  &quot;authUri&quot;: &quot;A String&quot;, # The URI used by the IDP to authenticate the user.
  &quot;captchaRequired&quot;: True or False, # True if captcha is required.
  &quot;forExistingProvider&quot;: True or False, # True if the authUri is for user&#x27;s existing provider.
  &quot;kind&quot;: &quot;identitytoolkit#CreateAuthUriResponse&quot;, # The fixed string identitytoolkit#CreateAuthUriResponse&quot;.
  &quot;providerId&quot;: &quot;A String&quot;, # The provider ID of the auth URI.
  &quot;registered&quot;: True or False, # Whether the user is registered if the identifier is an email.
  &quot;sessionId&quot;: &quot;A String&quot;, # Session ID which should be passed in the following verifyAssertion request.
  &quot;signinMethods&quot;: [ # All sign-in methods this user has used.
    &quot;A String&quot;,
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="deleteAccount">deleteAccount(body=None)</code>
  <pre>Delete user account.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to delete account.
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;idToken&quot;: &quot;A String&quot;, # The GITKit token or STS id token of the authenticated user.
  &quot;localId&quot;: &quot;A String&quot;, # The local ID of the user.
}


Returns:
  An object of the form:

    { # Respone of deleting account.
  &quot;kind&quot;: &quot;identitytoolkit#DeleteAccountResponse&quot;, # The fixed string &quot;identitytoolkit#DeleteAccountResponse&quot;.
}</pre>
</div>

<div class="method">
    <code class="details" id="downloadAccount">downloadAccount(body=None)</code>
  <pre>Batch download user accounts.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to download user account in batch.
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;maxResults&quot;: 42, # The max number of results to return in the response.
  &quot;nextPageToken&quot;: &quot;A String&quot;, # The token for the next page. This should be taken from the previous response.
  &quot;targetProjectId&quot;: &quot;A String&quot;, # Specify which project (field value is actually project id) to operate. Only used when provided credential.
}


Returns:
  An object of the form:

    { # Response of downloading accounts in batch.
  &quot;kind&quot;: &quot;identitytoolkit#DownloadAccountResponse&quot;, # The fixed string &quot;identitytoolkit#DownloadAccountResponse&quot;.
  &quot;nextPageToken&quot;: &quot;A String&quot;, # The next page token. To be used in a subsequent request to return the next page of results.
  &quot;users&quot;: [ # The user accounts data.
    { # Template for an individual account info.
      &quot;createdAt&quot;: &quot;A String&quot;, # User creation timestamp.
      &quot;customAttributes&quot;: &quot;A String&quot;, # The custom attributes to be set in the user&#x27;s id token.
      &quot;customAuth&quot;: True or False, # Whether the user is authenticated by the developer.
      &quot;disabled&quot;: True or False, # Whether the user is disabled.
      &quot;displayName&quot;: &quot;A String&quot;, # The name of the user.
      &quot;email&quot;: &quot;A String&quot;, # The email of the user.
      &quot;emailVerified&quot;: True or False, # Whether the email has been verified.
      &quot;lastLoginAt&quot;: &quot;A String&quot;, # last login timestamp.
      &quot;localId&quot;: &quot;A String&quot;, # The local ID of the user.
      &quot;passwordHash&quot;: &quot;A String&quot;, # The user&#x27;s hashed password.
      &quot;passwordUpdatedAt&quot;: 3.14, # The timestamp when the password was last updated.
      &quot;phoneNumber&quot;: &quot;A String&quot;, # User&#x27;s phone number.
      &quot;photoUrl&quot;: &quot;A String&quot;, # The URL of the user profile photo.
      &quot;providerUserInfo&quot;: [ # The IDP of the user.
        {
          &quot;displayName&quot;: &quot;A String&quot;, # The user&#x27;s display name at the IDP.
          &quot;email&quot;: &quot;A String&quot;, # User&#x27;s email at IDP.
          &quot;federatedId&quot;: &quot;A String&quot;, # User&#x27;s identifier at IDP.
          &quot;phoneNumber&quot;: &quot;A String&quot;, # User&#x27;s phone number.
          &quot;photoUrl&quot;: &quot;A String&quot;, # The user&#x27;s photo url at the IDP.
          &quot;providerId&quot;: &quot;A String&quot;, # The IdP ID. For white listed IdPs it&#x27;s a short domain name, e.g., google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it&#x27;s the OP identifier.
          &quot;rawId&quot;: &quot;A String&quot;, # User&#x27;s raw identifier directly returned from IDP.
          &quot;screenName&quot;: &quot;A String&quot;, # User&#x27;s screen name at Twitter or login name at Github.
        },
      ],
      &quot;rawPassword&quot;: &quot;A String&quot;, # The user&#x27;s plain text password.
      &quot;salt&quot;: &quot;A String&quot;, # The user&#x27;s password salt.
      &quot;screenName&quot;: &quot;A String&quot;, # User&#x27;s screen name at Twitter or login name at Github.
      &quot;validSince&quot;: &quot;A String&quot;, # Timestamp in seconds for valid login token.
      &quot;version&quot;: 42, # Version of the user&#x27;s password.
    },
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="downloadAccount_next">downloadAccount_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="emailLinkSignin">emailLinkSignin(body=None)</code>
  <pre>Reset password for a user.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to sign in with email.
  &quot;email&quot;: &quot;A String&quot;, # The email address of the user.
  &quot;idToken&quot;: &quot;A String&quot;, # Token for linking flow.
  &quot;oobCode&quot;: &quot;A String&quot;, # The confirmation code.
}


Returns:
  An object of the form:

    { # Response of email signIn.
  &quot;email&quot;: &quot;A String&quot;, # The user&#x27;s email.
  &quot;expiresIn&quot;: &quot;A String&quot;, # Expiration time of STS id token in seconds.
  &quot;idToken&quot;: &quot;A String&quot;, # The STS id token to login the newly signed in user.
  &quot;isNewUser&quot;: True or False, # Whether the user is new.
  &quot;kind&quot;: &quot;identitytoolkit#EmailLinkSigninResponse&quot;, # The fixed string &quot;identitytoolkit#EmailLinkSigninResponse&quot;.
  &quot;localId&quot;: &quot;A String&quot;, # The RP local ID of the user.
  &quot;refreshToken&quot;: &quot;A String&quot;, # The refresh token for the signed in user.
}</pre>
</div>

<div class="method">
    <code class="details" id="getAccountInfo">getAccountInfo(body=None)</code>
  <pre>Returns the account info.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to get the account information.
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;email&quot;: [ # The list of emails of the users to inquiry.
    &quot;A String&quot;,
  ],
  &quot;idToken&quot;: &quot;A String&quot;, # The GITKit token of the authenticated user.
  &quot;localId&quot;: [ # The list of local ID&#x27;s of the users to inquiry.
    &quot;A String&quot;,
  ],
  &quot;phoneNumber&quot;: [ # Privileged caller can query users by specified phone number.
    &quot;A String&quot;,
  ],
}


Returns:
  An object of the form:

    { # Response of getting account information.
  &quot;kind&quot;: &quot;identitytoolkit#GetAccountInfoResponse&quot;, # The fixed string &quot;identitytoolkit#GetAccountInfoResponse&quot;.
  &quot;users&quot;: [ # The info of the users.
    { # Template for an individual account info.
      &quot;createdAt&quot;: &quot;A String&quot;, # User creation timestamp.
      &quot;customAttributes&quot;: &quot;A String&quot;, # The custom attributes to be set in the user&#x27;s id token.
      &quot;customAuth&quot;: True or False, # Whether the user is authenticated by the developer.
      &quot;disabled&quot;: True or False, # Whether the user is disabled.
      &quot;displayName&quot;: &quot;A String&quot;, # The name of the user.
      &quot;email&quot;: &quot;A String&quot;, # The email of the user.
      &quot;emailVerified&quot;: True or False, # Whether the email has been verified.
      &quot;lastLoginAt&quot;: &quot;A String&quot;, # last login timestamp.
      &quot;localId&quot;: &quot;A String&quot;, # The local ID of the user.
      &quot;passwordHash&quot;: &quot;A String&quot;, # The user&#x27;s hashed password.
      &quot;passwordUpdatedAt&quot;: 3.14, # The timestamp when the password was last updated.
      &quot;phoneNumber&quot;: &quot;A String&quot;, # User&#x27;s phone number.
      &quot;photoUrl&quot;: &quot;A String&quot;, # The URL of the user profile photo.
      &quot;providerUserInfo&quot;: [ # The IDP of the user.
        {
          &quot;displayName&quot;: &quot;A String&quot;, # The user&#x27;s display name at the IDP.
          &quot;email&quot;: &quot;A String&quot;, # User&#x27;s email at IDP.
          &quot;federatedId&quot;: &quot;A String&quot;, # User&#x27;s identifier at IDP.
          &quot;phoneNumber&quot;: &quot;A String&quot;, # User&#x27;s phone number.
          &quot;photoUrl&quot;: &quot;A String&quot;, # The user&#x27;s photo url at the IDP.
          &quot;providerId&quot;: &quot;A String&quot;, # The IdP ID. For white listed IdPs it&#x27;s a short domain name, e.g., google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it&#x27;s the OP identifier.
          &quot;rawId&quot;: &quot;A String&quot;, # User&#x27;s raw identifier directly returned from IDP.
          &quot;screenName&quot;: &quot;A String&quot;, # User&#x27;s screen name at Twitter or login name at Github.
        },
      ],
      &quot;rawPassword&quot;: &quot;A String&quot;, # The user&#x27;s plain text password.
      &quot;salt&quot;: &quot;A String&quot;, # The user&#x27;s password salt.
      &quot;screenName&quot;: &quot;A String&quot;, # User&#x27;s screen name at Twitter or login name at Github.
      &quot;validSince&quot;: &quot;A String&quot;, # Timestamp in seconds for valid login token.
      &quot;version&quot;: 42, # Version of the user&#x27;s password.
    },
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="getOobConfirmationCode">getOobConfirmationCode(body=None)</code>
  <pre>Get a code for user action confirmation.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request of getting a code for user confirmation (reset password, change email etc.)
  &quot;androidInstallApp&quot;: True or False, # whether or not to install the android app on the device where the link is opened
  &quot;androidMinimumVersion&quot;: &quot;A String&quot;, # minimum version of the app. if the version on the device is lower than this version then the user is taken to the play store to upgrade the app
  &quot;androidPackageName&quot;: &quot;A String&quot;, # android package name of the android app to handle the action code
  &quot;canHandleCodeInApp&quot;: True or False, # whether or not the app can handle the oob code without first going to web
  &quot;captchaResp&quot;: &quot;A String&quot;, # The recaptcha response from the user.
  &quot;challenge&quot;: &quot;A String&quot;, # The recaptcha challenge presented to the user.
  &quot;continueUrl&quot;: &quot;A String&quot;, # The url to continue to the Gitkit app
  &quot;email&quot;: &quot;A String&quot;, # The email of the user.
  &quot;iOSAppStoreId&quot;: &quot;A String&quot;, # iOS app store id to download the app if it&#x27;s not already installed
  &quot;iOSBundleId&quot;: &quot;A String&quot;, # the iOS bundle id of iOS app to handle the action code
  &quot;idToken&quot;: &quot;A String&quot;, # The user&#x27;s Gitkit login token for email change.
  &quot;kind&quot;: &quot;identitytoolkit#relyingparty&quot;, # The fixed string &quot;identitytoolkit#relyingparty&quot;.
  &quot;newEmail&quot;: &quot;A String&quot;, # The new email if the code is for email change.
  &quot;requestType&quot;: &quot;A String&quot;, # The request type.
  &quot;userIp&quot;: &quot;A String&quot;, # The IP address of the user.
}


Returns:
  An object of the form:

    { # Response of getting a code for user confirmation (reset password, change email etc.).
  &quot;email&quot;: &quot;A String&quot;, # The email address that the email is sent to.
  &quot;kind&quot;: &quot;identitytoolkit#GetOobConfirmationCodeResponse&quot;, # The fixed string &quot;identitytoolkit#GetOobConfirmationCodeResponse&quot;.
  &quot;oobCode&quot;: &quot;A String&quot;, # The code to be send to the user.
}</pre>
</div>

<div class="method">
    <code class="details" id="getProjectConfig">getProjectConfig(delegatedProjectNumber=None, projectNumber=None)</code>
  <pre>Get project configuration.

Args:
  delegatedProjectNumber: string, Delegated GCP project number of the request.
  projectNumber: string, GCP project number of the request.

Returns:
  An object of the form:

    { # Response of getting the project configuration.
  &quot;allowPasswordUser&quot;: True or False, # Whether to allow password user sign in or sign up.
  &quot;apiKey&quot;: &quot;A String&quot;, # Browser API key, needed when making http request to Apiary.
  &quot;authorizedDomains&quot;: [ # Authorized domains.
    &quot;A String&quot;,
  ],
  &quot;changeEmailTemplate&quot;: { # Template for an email template. # Change email template.
    &quot;body&quot;: &quot;A String&quot;, # Email body.
    &quot;format&quot;: &quot;A String&quot;, # Email body format.
    &quot;from&quot;: &quot;A String&quot;, # From address of the email.
    &quot;fromDisplayName&quot;: &quot;A String&quot;, # From display name.
    &quot;replyTo&quot;: &quot;A String&quot;, # Reply-to address.
    &quot;subject&quot;: &quot;A String&quot;, # Subject of the email.
  },
  &quot;dynamicLinksDomain&quot;: &quot;A String&quot;,
  &quot;enableAnonymousUser&quot;: True or False, # Whether anonymous user is enabled.
  &quot;idpConfig&quot;: [ # OAuth2 provider configuration.
    { # Template for a single idp configuration.
      &quot;clientId&quot;: &quot;A String&quot;, # OAuth2 client ID.
      &quot;enabled&quot;: True or False, # Whether this IDP is enabled.
      &quot;experimentPercent&quot;: 42, # Percent of users who will be prompted/redirected federated login for this IDP.
      &quot;provider&quot;: &quot;A String&quot;, # OAuth2 provider.
      &quot;secret&quot;: &quot;A String&quot;, # OAuth2 client secret.
      &quot;whitelistedAudiences&quot;: [ # Whitelisted client IDs for audience check.
        &quot;A String&quot;,
      ],
    },
  ],
  &quot;legacyResetPasswordTemplate&quot;: { # Template for an email template. # Legacy reset password email template.
    &quot;body&quot;: &quot;A String&quot;, # Email body.
    &quot;format&quot;: &quot;A String&quot;, # Email body format.
    &quot;from&quot;: &quot;A String&quot;, # From address of the email.
    &quot;fromDisplayName&quot;: &quot;A String&quot;, # From display name.
    &quot;replyTo&quot;: &quot;A String&quot;, # Reply-to address.
    &quot;subject&quot;: &quot;A String&quot;, # Subject of the email.
  },
  &quot;projectId&quot;: &quot;A String&quot;, # Project ID of the relying party.
  &quot;resetPasswordTemplate&quot;: { # Template for an email template. # Reset password email template.
    &quot;body&quot;: &quot;A String&quot;, # Email body.
    &quot;format&quot;: &quot;A String&quot;, # Email body format.
    &quot;from&quot;: &quot;A String&quot;, # From address of the email.
    &quot;fromDisplayName&quot;: &quot;A String&quot;, # From display name.
    &quot;replyTo&quot;: &quot;A String&quot;, # Reply-to address.
    &quot;subject&quot;: &quot;A String&quot;, # Subject of the email.
  },
  &quot;useEmailSending&quot;: True or False, # Whether to use email sending provided by Firebear.
  &quot;verifyEmailTemplate&quot;: { # Template for an email template. # Verify email template.
    &quot;body&quot;: &quot;A String&quot;, # Email body.
    &quot;format&quot;: &quot;A String&quot;, # Email body format.
    &quot;from&quot;: &quot;A String&quot;, # From address of the email.
    &quot;fromDisplayName&quot;: &quot;A String&quot;, # From display name.
    &quot;replyTo&quot;: &quot;A String&quot;, # Reply-to address.
    &quot;subject&quot;: &quot;A String&quot;, # Subject of the email.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="getPublicKeys">getPublicKeys()</code>
  <pre>Get token signing public key.

Args:

Returns:
  An object of the form:

    { # Respone of getting public keys.
  &quot;a_key&quot;: &quot;A String&quot;,
}</pre>
</div>

<div class="method">
    <code class="details" id="getRecaptchaParam">getRecaptchaParam()</code>
  <pre>Get recaptcha secure param.

Args:

Returns:
  An object of the form:

    { # Response of getting recaptcha param.
  &quot;kind&quot;: &quot;identitytoolkit#GetRecaptchaParamResponse&quot;, # The fixed string &quot;identitytoolkit#GetRecaptchaParamResponse&quot;.
  &quot;recaptchaSiteKey&quot;: &quot;A String&quot;, # Site key registered at recaptcha.
  &quot;recaptchaStoken&quot;: &quot;A String&quot;, # The stoken field for the recaptcha widget, used to request captcha challenge.
}</pre>
</div>

<div class="method">
    <code class="details" id="resetPassword">resetPassword(body=None)</code>
  <pre>Reset password for a user.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to reset the password.
  &quot;email&quot;: &quot;A String&quot;, # The email address of the user.
  &quot;newPassword&quot;: &quot;A String&quot;, # The new password inputted by the user.
  &quot;oldPassword&quot;: &quot;A String&quot;, # The old password inputted by the user.
  &quot;oobCode&quot;: &quot;A String&quot;, # The confirmation code.
}


Returns:
  An object of the form:

    { # Response of resetting the password.
  &quot;email&quot;: &quot;A String&quot;, # The user&#x27;s email. If the out-of-band code is for email recovery, the user&#x27;s original email.
  &quot;kind&quot;: &quot;identitytoolkit#ResetPasswordResponse&quot;, # The fixed string &quot;identitytoolkit#ResetPasswordResponse&quot;.
  &quot;newEmail&quot;: &quot;A String&quot;, # If the out-of-band code is for email recovery, the user&#x27;s new email.
  &quot;requestType&quot;: &quot;A String&quot;, # The request type.
}</pre>
</div>

<div class="method">
    <code class="details" id="sendVerificationCode">sendVerificationCode(body=None)</code>
  <pre>Send SMS verification code.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request for Identitytoolkit-SendVerificationCode
  &quot;iosReceipt&quot;: &quot;A String&quot;, # Receipt of successful app token validation with APNS.
  &quot;iosSecret&quot;: &quot;A String&quot;, # Secret delivered to iOS app via APNS.
  &quot;phoneNumber&quot;: &quot;A String&quot;, # The phone number to send the verification code to in E.164 format.
  &quot;recaptchaToken&quot;: &quot;A String&quot;, # Recaptcha solution.
}


Returns:
  An object of the form:

    { # Response for Identitytoolkit-SendVerificationCode
  &quot;sessionInfo&quot;: &quot;A String&quot;, # Encrypted session information
}</pre>
</div>

<div class="method">
    <code class="details" id="setAccountInfo">setAccountInfo(body=None)</code>
  <pre>Set account info for a user.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to set the account information.
  &quot;captchaChallenge&quot;: &quot;A String&quot;, # The captcha challenge.
  &quot;captchaResponse&quot;: &quot;A String&quot;, # Response to the captcha.
  &quot;createdAt&quot;: &quot;A String&quot;, # The timestamp when the account is created.
  &quot;customAttributes&quot;: &quot;A String&quot;, # The custom attributes to be set in the user&#x27;s id token.
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;deleteAttribute&quot;: [ # The attributes users request to delete.
    &quot;A String&quot;,
  ],
  &quot;deleteProvider&quot;: [ # The IDPs the user request to delete.
    &quot;A String&quot;,
  ],
  &quot;disableUser&quot;: True or False, # Whether to disable the user.
  &quot;displayName&quot;: &quot;A String&quot;, # The name of the user.
  &quot;email&quot;: &quot;A String&quot;, # The email of the user.
  &quot;emailVerified&quot;: True or False, # Mark the email as verified or not.
  &quot;idToken&quot;: &quot;A String&quot;, # The GITKit token of the authenticated user.
  &quot;instanceId&quot;: &quot;A String&quot;, # Instance id token of the app.
  &quot;lastLoginAt&quot;: &quot;A String&quot;, # Last login timestamp.
  &quot;localId&quot;: &quot;A String&quot;, # The local ID of the user.
  &quot;oobCode&quot;: &quot;A String&quot;, # The out-of-band code of the change email request.
  &quot;password&quot;: &quot;A String&quot;, # The new password of the user.
  &quot;phoneNumber&quot;: &quot;A String&quot;, # Privileged caller can update user with specified phone number.
  &quot;photoUrl&quot;: &quot;A String&quot;, # The photo url of the user.
  &quot;provider&quot;: [ # The associated IDPs of the user.
    &quot;A String&quot;,
  ],
  &quot;returnSecureToken&quot;: True or False, # Whether return sts id token and refresh token instead of gitkit token.
  &quot;upgradeToFederatedLogin&quot;: True or False, # Mark the user to upgrade to federated login.
  &quot;validSince&quot;: &quot;A String&quot;, # Timestamp in seconds for valid login token.
}


Returns:
  An object of the form:

    { # Respone of setting the account information.
  &quot;displayName&quot;: &quot;A String&quot;, # The name of the user.
  &quot;email&quot;: &quot;A String&quot;, # The email of the user.
  &quot;emailVerified&quot;: True or False, # If email has been verified.
  &quot;expiresIn&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be expiration time of STS id token in seconds.
  &quot;idToken&quot;: &quot;A String&quot;, # The Gitkit id token to login the newly sign up user.
  &quot;kind&quot;: &quot;identitytoolkit#SetAccountInfoResponse&quot;, # The fixed string &quot;identitytoolkit#SetAccountInfoResponse&quot;.
  &quot;localId&quot;: &quot;A String&quot;, # The local ID of the user.
  &quot;newEmail&quot;: &quot;A String&quot;, # The new email the user attempts to change to.
  &quot;passwordHash&quot;: &quot;A String&quot;, # The user&#x27;s hashed password.
  &quot;photoUrl&quot;: &quot;A String&quot;, # The photo url of the user.
  &quot;providerUserInfo&quot;: [ # The user&#x27;s profiles at the associated IdPs.
    {
      &quot;displayName&quot;: &quot;A String&quot;, # The user&#x27;s display name at the IDP.
      &quot;federatedId&quot;: &quot;A String&quot;, # User&#x27;s identifier at IDP.
      &quot;photoUrl&quot;: &quot;A String&quot;, # The user&#x27;s photo url at the IDP.
      &quot;providerId&quot;: &quot;A String&quot;, # The IdP ID. For whitelisted IdPs it&#x27;s a short domain name, e.g., google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it&#x27;s the OP identifier.
    },
  ],
  &quot;refreshToken&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be refresh token.
}</pre>
</div>

<div class="method">
    <code class="details" id="setProjectConfig">setProjectConfig(body=None)</code>
  <pre>Set project configuration.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to set the project configuration.
  &quot;allowPasswordUser&quot;: True or False, # Whether to allow password user sign in or sign up.
  &quot;apiKey&quot;: &quot;A String&quot;, # Browser API key, needed when making http request to Apiary.
  &quot;authorizedDomains&quot;: [ # Authorized domains for widget redirect.
    &quot;A String&quot;,
  ],
  &quot;changeEmailTemplate&quot;: { # Template for an email template. # Change email template.
    &quot;body&quot;: &quot;A String&quot;, # Email body.
    &quot;format&quot;: &quot;A String&quot;, # Email body format.
    &quot;from&quot;: &quot;A String&quot;, # From address of the email.
    &quot;fromDisplayName&quot;: &quot;A String&quot;, # From display name.
    &quot;replyTo&quot;: &quot;A String&quot;, # Reply-to address.
    &quot;subject&quot;: &quot;A String&quot;, # Subject of the email.
  },
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;enableAnonymousUser&quot;: True or False, # Whether to enable anonymous user.
  &quot;idpConfig&quot;: [ # Oauth2 provider configuration.
    { # Template for a single idp configuration.
      &quot;clientId&quot;: &quot;A String&quot;, # OAuth2 client ID.
      &quot;enabled&quot;: True or False, # Whether this IDP is enabled.
      &quot;experimentPercent&quot;: 42, # Percent of users who will be prompted/redirected federated login for this IDP.
      &quot;provider&quot;: &quot;A String&quot;, # OAuth2 provider.
      &quot;secret&quot;: &quot;A String&quot;, # OAuth2 client secret.
      &quot;whitelistedAudiences&quot;: [ # Whitelisted client IDs for audience check.
        &quot;A String&quot;,
      ],
    },
  ],
  &quot;legacyResetPasswordTemplate&quot;: { # Template for an email template. # Legacy reset password email template.
    &quot;body&quot;: &quot;A String&quot;, # Email body.
    &quot;format&quot;: &quot;A String&quot;, # Email body format.
    &quot;from&quot;: &quot;A String&quot;, # From address of the email.
    &quot;fromDisplayName&quot;: &quot;A String&quot;, # From display name.
    &quot;replyTo&quot;: &quot;A String&quot;, # Reply-to address.
    &quot;subject&quot;: &quot;A String&quot;, # Subject of the email.
  },
  &quot;resetPasswordTemplate&quot;: { # Template for an email template. # Reset password email template.
    &quot;body&quot;: &quot;A String&quot;, # Email body.
    &quot;format&quot;: &quot;A String&quot;, # Email body format.
    &quot;from&quot;: &quot;A String&quot;, # From address of the email.
    &quot;fromDisplayName&quot;: &quot;A String&quot;, # From display name.
    &quot;replyTo&quot;: &quot;A String&quot;, # Reply-to address.
    &quot;subject&quot;: &quot;A String&quot;, # Subject of the email.
  },
  &quot;useEmailSending&quot;: True or False, # Whether to use email sending provided by Firebear.
  &quot;verifyEmailTemplate&quot;: { # Template for an email template. # Verify email template.
    &quot;body&quot;: &quot;A String&quot;, # Email body.
    &quot;format&quot;: &quot;A String&quot;, # Email body format.
    &quot;from&quot;: &quot;A String&quot;, # From address of the email.
    &quot;fromDisplayName&quot;: &quot;A String&quot;, # From display name.
    &quot;replyTo&quot;: &quot;A String&quot;, # Reply-to address.
    &quot;subject&quot;: &quot;A String&quot;, # Subject of the email.
  },
}


Returns:
  An object of the form:

    { # Response of setting the project configuration.
  &quot;projectId&quot;: &quot;A String&quot;, # Project ID of the relying party.
}</pre>
</div>

<div class="method">
    <code class="details" id="signOutUser">signOutUser(body=None)</code>
  <pre>Sign out user.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to sign out user.
  &quot;instanceId&quot;: &quot;A String&quot;, # Instance id token of the app.
  &quot;localId&quot;: &quot;A String&quot;, # The local ID of the user.
}


Returns:
  An object of the form:

    { # Response of signing out user.
  &quot;localId&quot;: &quot;A String&quot;, # The local ID of the user.
}</pre>
</div>

<div class="method">
    <code class="details" id="signupNewUser">signupNewUser(body=None)</code>
  <pre>Signup new user.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to signup new user, create anonymous user or anonymous user reauth.
  &quot;captchaChallenge&quot;: &quot;A String&quot;, # The captcha challenge.
  &quot;captchaResponse&quot;: &quot;A String&quot;, # Response to the captcha.
  &quot;disabled&quot;: True or False, # Whether to disable the user. Only can be used by service account.
  &quot;displayName&quot;: &quot;A String&quot;, # The name of the user.
  &quot;email&quot;: &quot;A String&quot;, # The email of the user.
  &quot;emailVerified&quot;: True or False, # Mark the email as verified or not. Only can be used by service account.
  &quot;idToken&quot;: &quot;A String&quot;, # The GITKit token of the authenticated user.
  &quot;instanceId&quot;: &quot;A String&quot;, # Instance id token of the app.
  &quot;localId&quot;: &quot;A String&quot;, # Privileged caller can create user with specified user id.
  &quot;password&quot;: &quot;A String&quot;, # The new password of the user.
  &quot;phoneNumber&quot;: &quot;A String&quot;, # Privileged caller can create user with specified phone number.
  &quot;photoUrl&quot;: &quot;A String&quot;, # The photo url of the user.
  &quot;tenantId&quot;: &quot;A String&quot;, # For multi-tenant use cases, in order to construct sign-in URL with the correct IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs from.
  &quot;tenantProjectNumber&quot;: &quot;A String&quot;, # Tenant project number to be used for idp discovery.
}


Returns:
  An object of the form:

    { # Response of signing up new user, creating anonymous user or anonymous user reauth.
  &quot;displayName&quot;: &quot;A String&quot;, # The name of the user.
  &quot;email&quot;: &quot;A String&quot;, # The email of the user.
  &quot;expiresIn&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be expiration time of STS id token in seconds.
  &quot;idToken&quot;: &quot;A String&quot;, # The Gitkit id token to login the newly sign up user.
  &quot;kind&quot;: &quot;identitytoolkit#SignupNewUserResponse&quot;, # The fixed string &quot;identitytoolkit#SignupNewUserResponse&quot;.
  &quot;localId&quot;: &quot;A String&quot;, # The RP local ID of the user.
  &quot;refreshToken&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be refresh token.
}</pre>
</div>

<div class="method">
    <code class="details" id="uploadAccount">uploadAccount(body=None)</code>
  <pre>Batch upload existing user accounts.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to upload user account in batch.
  &quot;allowOverwrite&quot;: True or False, # Whether allow overwrite existing account when user local_id exists.
  &quot;blockSize&quot;: 42,
  &quot;cpuMemCost&quot;: 42, # The following 4 fields are for standard scrypt algorithm.
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;dkLen&quot;: 42,
  &quot;hashAlgorithm&quot;: &quot;A String&quot;, # The password hash algorithm.
  &quot;memoryCost&quot;: 42, # Memory cost for hash calculation. Used by scrypt similar algorithms.
  &quot;parallelization&quot;: 42,
  &quot;rounds&quot;: 42, # Rounds for hash calculation. Used by scrypt and similar algorithms.
  &quot;saltSeparator&quot;: &quot;A String&quot;, # The salt separator.
  &quot;sanityCheck&quot;: True or False, # If true, backend will do sanity check(including duplicate email and federated id) when uploading account.
  &quot;signerKey&quot;: &quot;A String&quot;, # The key for to hash the password.
  &quot;targetProjectId&quot;: &quot;A String&quot;, # Specify which project (field value is actually project id) to operate. Only used when provided credential.
  &quot;users&quot;: [ # The account info to be stored.
    { # Template for an individual account info.
      &quot;createdAt&quot;: &quot;A String&quot;, # User creation timestamp.
      &quot;customAttributes&quot;: &quot;A String&quot;, # The custom attributes to be set in the user&#x27;s id token.
      &quot;customAuth&quot;: True or False, # Whether the user is authenticated by the developer.
      &quot;disabled&quot;: True or False, # Whether the user is disabled.
      &quot;displayName&quot;: &quot;A String&quot;, # The name of the user.
      &quot;email&quot;: &quot;A String&quot;, # The email of the user.
      &quot;emailVerified&quot;: True or False, # Whether the email has been verified.
      &quot;lastLoginAt&quot;: &quot;A String&quot;, # last login timestamp.
      &quot;localId&quot;: &quot;A String&quot;, # The local ID of the user.
      &quot;passwordHash&quot;: &quot;A String&quot;, # The user&#x27;s hashed password.
      &quot;passwordUpdatedAt&quot;: 3.14, # The timestamp when the password was last updated.
      &quot;phoneNumber&quot;: &quot;A String&quot;, # User&#x27;s phone number.
      &quot;photoUrl&quot;: &quot;A String&quot;, # The URL of the user profile photo.
      &quot;providerUserInfo&quot;: [ # The IDP of the user.
        {
          &quot;displayName&quot;: &quot;A String&quot;, # The user&#x27;s display name at the IDP.
          &quot;email&quot;: &quot;A String&quot;, # User&#x27;s email at IDP.
          &quot;federatedId&quot;: &quot;A String&quot;, # User&#x27;s identifier at IDP.
          &quot;phoneNumber&quot;: &quot;A String&quot;, # User&#x27;s phone number.
          &quot;photoUrl&quot;: &quot;A String&quot;, # The user&#x27;s photo url at the IDP.
          &quot;providerId&quot;: &quot;A String&quot;, # The IdP ID. For white listed IdPs it&#x27;s a short domain name, e.g., google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it&#x27;s the OP identifier.
          &quot;rawId&quot;: &quot;A String&quot;, # User&#x27;s raw identifier directly returned from IDP.
          &quot;screenName&quot;: &quot;A String&quot;, # User&#x27;s screen name at Twitter or login name at Github.
        },
      ],
      &quot;rawPassword&quot;: &quot;A String&quot;, # The user&#x27;s plain text password.
      &quot;salt&quot;: &quot;A String&quot;, # The user&#x27;s password salt.
      &quot;screenName&quot;: &quot;A String&quot;, # User&#x27;s screen name at Twitter or login name at Github.
      &quot;validSince&quot;: &quot;A String&quot;, # Timestamp in seconds for valid login token.
      &quot;version&quot;: 42, # Version of the user&#x27;s password.
    },
  ],
}


Returns:
  An object of the form:

    { # Respone of uploading accounts in batch.
  &quot;error&quot;: [ # The error encountered while processing the account info.
    {
      &quot;index&quot;: 42, # The index of the malformed account, starting from 0.
      &quot;message&quot;: &quot;A String&quot;, # Detailed error message for the account info.
    },
  ],
  &quot;kind&quot;: &quot;identitytoolkit#UploadAccountResponse&quot;, # The fixed string &quot;identitytoolkit#UploadAccountResponse&quot;.
}</pre>
</div>

<div class="method">
    <code class="details" id="verifyAssertion">verifyAssertion(body=None)</code>
  <pre>Verifies the assertion returned by the IdP.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to verify the IDP assertion.
  &quot;autoCreate&quot;: True or False, # When it&#x27;s true, automatically creates a new account if the user doesn&#x27;t exist. When it&#x27;s false, allows existing user to sign in normally and throws exception if the user doesn&#x27;t exist.
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;idToken&quot;: &quot;A String&quot;, # The GITKit token of the authenticated user.
  &quot;instanceId&quot;: &quot;A String&quot;, # Instance id token of the app.
  &quot;pendingIdToken&quot;: &quot;A String&quot;, # The GITKit token for the non-trusted IDP pending to be confirmed by the user.
  &quot;postBody&quot;: &quot;A String&quot;, # The post body if the request is a HTTP POST.
  &quot;requestUri&quot;: &quot;A String&quot;, # The URI to which the IDP redirects the user back. It may contain federated login result params added by the IDP.
  &quot;returnIdpCredential&quot;: True or False, # Whether return 200 and IDP credential rather than throw exception when federated id is already linked.
  &quot;returnRefreshToken&quot;: True or False, # Whether to return refresh tokens.
  &quot;returnSecureToken&quot;: True or False, # Whether return sts id token and refresh token instead of gitkit token.
  &quot;sessionId&quot;: &quot;A String&quot;, # Session ID, which should match the one in previous createAuthUri request.
  &quot;tenantId&quot;: &quot;A String&quot;, # For multi-tenant use cases, in order to construct sign-in URL with the correct IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs from.
  &quot;tenantProjectNumber&quot;: &quot;A String&quot;, # Tenant project number to be used for idp discovery.
}


Returns:
  An object of the form:

    { # Response of verifying the IDP assertion.
  &quot;action&quot;: &quot;A String&quot;, # The action code.
  &quot;appInstallationUrl&quot;: &quot;A String&quot;, # URL for OTA app installation.
  &quot;appScheme&quot;: &quot;A String&quot;, # The custom scheme used by mobile app.
  &quot;context&quot;: &quot;A String&quot;, # The opaque value used by the client to maintain context info between the authentication request and the IDP callback.
  &quot;dateOfBirth&quot;: &quot;A String&quot;, # The birth date of the IdP account.
  &quot;displayName&quot;: &quot;A String&quot;, # The display name of the user.
  &quot;email&quot;: &quot;A String&quot;, # The email returned by the IdP. NOTE: The federated login user may not own the email.
  &quot;emailRecycled&quot;: True or False, # It&#x27;s true if the email is recycled.
  &quot;emailVerified&quot;: True or False, # The value is true if the IDP is also the email provider. It means the user owns the email.
  &quot;errorMessage&quot;: &quot;A String&quot;, # Client error code.
  &quot;expiresIn&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be expiration time of STS id token in seconds.
  &quot;federatedId&quot;: &quot;A String&quot;, # The unique ID identifies the IdP account.
  &quot;firstName&quot;: &quot;A String&quot;, # The first name of the user.
  &quot;fullName&quot;: &quot;A String&quot;, # The full name of the user.
  &quot;idToken&quot;: &quot;A String&quot;, # The ID token.
  &quot;inputEmail&quot;: &quot;A String&quot;, # It&#x27;s the identifier param in the createAuthUri request if the identifier is an email. It can be used to check whether the user input email is different from the asserted email.
  &quot;isNewUser&quot;: True or False, # True if it&#x27;s a new user sign-in, false if it&#x27;s a returning user.
  &quot;kind&quot;: &quot;identitytoolkit#VerifyAssertionResponse&quot;, # The fixed string &quot;identitytoolkit#VerifyAssertionResponse&quot;.
  &quot;language&quot;: &quot;A String&quot;, # The language preference of the user.
  &quot;lastName&quot;: &quot;A String&quot;, # The last name of the user.
  &quot;localId&quot;: &quot;A String&quot;, # The RP local ID if it&#x27;s already been mapped to the IdP account identified by the federated ID.
  &quot;needConfirmation&quot;: True or False, # Whether the assertion is from a non-trusted IDP and need account linking confirmation.
  &quot;needEmail&quot;: True or False, # Whether need client to supply email to complete the federated login flow.
  &quot;nickName&quot;: &quot;A String&quot;, # The nick name of the user.
  &quot;oauthAccessToken&quot;: &quot;A String&quot;, # The OAuth2 access token.
  &quot;oauthAuthorizationCode&quot;: &quot;A String&quot;, # The OAuth2 authorization code.
  &quot;oauthExpireIn&quot;: 42, # The lifetime in seconds of the OAuth2 access token.
  &quot;oauthIdToken&quot;: &quot;A String&quot;, # The OIDC id token.
  &quot;oauthRequestToken&quot;: &quot;A String&quot;, # The user approved request token for the OpenID OAuth extension.
  &quot;oauthScope&quot;: &quot;A String&quot;, # The scope for the OpenID OAuth extension.
  &quot;oauthTokenSecret&quot;: &quot;A String&quot;, # The OAuth1 access token secret.
  &quot;originalEmail&quot;: &quot;A String&quot;, # The original email stored in the mapping storage. It&#x27;s returned when the federated ID is associated to a different email.
  &quot;photoUrl&quot;: &quot;A String&quot;, # The URI of the public accessible profiel picture.
  &quot;providerId&quot;: &quot;A String&quot;, # The IdP ID. For white listed IdPs it&#x27;s a short domain name e.g. google.com, aol.com, live.net and yahoo.com. If the &quot;providerId&quot; param is set to OpenID OP identifer other than the whilte listed IdPs the OP identifier is returned. If the &quot;identifier&quot; param is federated ID in the createAuthUri request. The domain part of the federated ID is returned.
  &quot;rawUserInfo&quot;: &quot;A String&quot;, # Raw IDP-returned user info.
  &quot;refreshToken&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be refresh token.
  &quot;screenName&quot;: &quot;A String&quot;, # The screen_name of a Twitter user or the login name at Github.
  &quot;timeZone&quot;: &quot;A String&quot;, # The timezone of the user.
  &quot;verifiedProvider&quot;: [ # When action is &#x27;map&#x27;, contains the idps which can be used for confirmation.
    &quot;A String&quot;,
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="verifyCustomToken">verifyCustomToken(body=None)</code>
  <pre>Verifies the developer asserted ID token.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to verify a custom token
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;instanceId&quot;: &quot;A String&quot;, # Instance id token of the app.
  &quot;returnSecureToken&quot;: True or False, # Whether return sts id token and refresh token instead of gitkit token.
  &quot;token&quot;: &quot;A String&quot;, # The custom token to verify
}


Returns:
  An object of the form:

    { # Response from verifying a custom token
  &quot;expiresIn&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be expiration time of STS id token in seconds.
  &quot;idToken&quot;: &quot;A String&quot;, # The GITKit token for authenticated user.
  &quot;isNewUser&quot;: True or False, # True if it&#x27;s a new user sign-in, false if it&#x27;s a returning user.
  &quot;kind&quot;: &quot;identitytoolkit#VerifyCustomTokenResponse&quot;, # The fixed string &quot;identitytoolkit#VerifyCustomTokenResponse&quot;.
  &quot;refreshToken&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be refresh token.
}</pre>
</div>

<div class="method">
    <code class="details" id="verifyPassword">verifyPassword(body=None)</code>
  <pre>Verifies the user entered password.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request to verify the password.
  &quot;captchaChallenge&quot;: &quot;A String&quot;, # The captcha challenge.
  &quot;captchaResponse&quot;: &quot;A String&quot;, # Response to the captcha.
  &quot;delegatedProjectNumber&quot;: &quot;A String&quot;, # GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.
  &quot;email&quot;: &quot;A String&quot;, # The email of the user.
  &quot;idToken&quot;: &quot;A String&quot;, # The GITKit token of the authenticated user.
  &quot;instanceId&quot;: &quot;A String&quot;, # Instance id token of the app.
  &quot;password&quot;: &quot;A String&quot;, # The password inputed by the user.
  &quot;pendingIdToken&quot;: &quot;A String&quot;, # The GITKit token for the non-trusted IDP, which is to be confirmed by the user.
  &quot;returnSecureToken&quot;: True or False, # Whether return sts id token and refresh token instead of gitkit token.
  &quot;tenantId&quot;: &quot;A String&quot;, # For multi-tenant use cases, in order to construct sign-in URL with the correct IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs from.
  &quot;tenantProjectNumber&quot;: &quot;A String&quot;, # Tenant project number to be used for idp discovery.
}


Returns:
  An object of the form:

    { # Request of verifying the password.
  &quot;displayName&quot;: &quot;A String&quot;, # The name of the user.
  &quot;email&quot;: &quot;A String&quot;, # The email returned by the IdP. NOTE: The federated login user may not own the email.
  &quot;expiresIn&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be expiration time of STS id token in seconds.
  &quot;idToken&quot;: &quot;A String&quot;, # The GITKit token for authenticated user.
  &quot;kind&quot;: &quot;identitytoolkit#VerifyPasswordResponse&quot;, # The fixed string &quot;identitytoolkit#VerifyPasswordResponse&quot;.
  &quot;localId&quot;: &quot;A String&quot;, # The RP local ID if it&#x27;s already been mapped to the IdP account identified by the federated ID.
  &quot;oauthAccessToken&quot;: &quot;A String&quot;, # The OAuth2 access token.
  &quot;oauthAuthorizationCode&quot;: &quot;A String&quot;, # The OAuth2 authorization code.
  &quot;oauthExpireIn&quot;: 42, # The lifetime in seconds of the OAuth2 access token.
  &quot;photoUrl&quot;: &quot;A String&quot;, # The URI of the user&#x27;s photo at IdP
  &quot;refreshToken&quot;: &quot;A String&quot;, # If idToken is STS id token, then this field will be refresh token.
  &quot;registered&quot;: True or False, # Whether the email is registered.
}</pre>
</div>

<div class="method">
    <code class="details" id="verifyPhoneNumber">verifyPhoneNumber(body=None)</code>
  <pre>Verifies ownership of a phone number and creates/updates the user account accordingly.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request for Identitytoolkit-VerifyPhoneNumber
  &quot;code&quot;: &quot;A String&quot;,
  &quot;idToken&quot;: &quot;A String&quot;,
  &quot;operation&quot;: &quot;A String&quot;,
  &quot;phoneNumber&quot;: &quot;A String&quot;,
  &quot;sessionInfo&quot;: &quot;A String&quot;, # The session info previously returned by IdentityToolkit-SendVerificationCode.
  &quot;temporaryProof&quot;: &quot;A String&quot;,
  &quot;verificationProof&quot;: &quot;A String&quot;,
}


Returns:
  An object of the form:

    { # Response for Identitytoolkit-VerifyPhoneNumber
  &quot;expiresIn&quot;: &quot;A String&quot;,
  &quot;idToken&quot;: &quot;A String&quot;,
  &quot;isNewUser&quot;: True or False,
  &quot;localId&quot;: &quot;A String&quot;,
  &quot;phoneNumber&quot;: &quot;A String&quot;,
  &quot;refreshToken&quot;: &quot;A String&quot;,
  &quot;temporaryProof&quot;: &quot;A String&quot;,
  &quot;temporaryProofExpiresIn&quot;: &quot;A String&quot;,
  &quot;verificationProof&quot;: &quot;A String&quot;,
  &quot;verificationProofExpiresIn&quot;: &quot;A String&quot;,
}</pre>
</div>

</body></html>